home *** CD-ROM | disk | FTP | other *** search
/ Nebula 1 / Nebula One.iso / Communications / Converse / Source / Converse.h < prev    next >
Text File  |  1996-01-01  |  3KB  |  125 lines

  1. //** Craig Laurent
  2. #import <appkit/appkit.h>
  3. #import <eointerface/eointerface.h>
  4.  
  5. #import "Communication.h"
  6. #import "IconAnimator.h"
  7. #import "InfoController.h"
  8. #import "Preferences.h"
  9. #import "User.h"
  10.  
  11.  
  12. /* Converse - an Object that works as the main application control object.  The majority of the work is done in this object.  This object starts the DO server, displays the requested panels and handles interaction with the user. */
  13.  
  14. @interface Converse:Object <NXSenderIsInvalid>
  15. {
  16.     //** window objects
  17. #ifdef IB
  18.     id    inputView;
  19.     id    logView;
  20.     id    sendInButton;
  21. #else
  22.     Text    *inputView;
  23.     Text    *logView;
  24.     Button    *sendInButton;
  25. #endif
  26.  
  27.     //**    Address window objects
  28. #ifdef IB
  29.     id    addressWindow;
  30.     id    machineBrowser;
  31.     id    machineField;
  32.     id    addButton;
  33.     id    removeButton;
  34.     id    updateCheck;
  35.     id    uniqueCheck;
  36. #else
  37.     Window        *addressWindow;
  38.     NXBrowser    *machineBrowser;
  39.     TextField    *machineField;
  40.     Button        *addButton;
  41.     Button        *removeButton;
  42.     Button        *updateCheck;
  43.     Button        *uniqueCheck;
  44. #endif
  45.  
  46.     //** Created objects
  47.     Preferences        *prefs;
  48.     Communication    *commCtlr;
  49.     NXConnection    *serverConnection;
  50.     InfoController    *infoCtlr;
  51.     User            *userInfo;
  52.     NSMutableArray    *addressList;
  53.     NSString        *filename;
  54.     Sound            *msgSound;
  55.     IconAnimator    *animator;
  56. }
  57.  
  58. - init;
  59. - free;
  60.  
  61. //** instance methods
  62. - (Preferences*)prefs;
  63. - (void)setPrefs:(Preferences*)newPrefs;
  64. - (Communication*)commCtlr;
  65. - (void)setCommCtlr:(Communication*)newComm;
  66. - (NXConnection*)serverConnection;
  67. - (void)setServerConnection:(NXConnection*)newServer;
  68. - (InfoController*)infoCtlr;
  69. - (void)setInfoCtlr:(InfoController*)newInfo;
  70. - (User*)userInfo;
  71. - (void)setUserInfo:(User*)newUser;
  72. - (NSMutableArray*)addressList;
  73. - (void)setAddressList:(NSMutableArray*)anArray;
  74. - (NSString*)filename;
  75. - (void)setFilename:(NSString*)string;
  76. - (Sound*)msgSound;
  77. - (void)setMsgSound:(Sound*)newSound;
  78. - (void)setMsgSoundWithName:(const char*)newName;
  79. - (IconAnimator*)animator;
  80. - (void)setAnimator:(IconAnimator*)newIA;
  81.  
  82. //** Communication & loggin methods
  83. - (void)createCommZone;
  84. - sendMessage:sender;
  85. - (NSString*)messageFromText;
  86. - (void)logMessage:(NSString*)message fromAuthor:author alert:(BOOL)yn;
  87. - senderIsInvalid:sender;
  88. - (void)transferMessage:(NSString*)message;
  89.  
  90. - add:sender;
  91. - remove:sender;
  92. - machineClicked:sender;
  93. - (void)refreshAddress;
  94.  
  95. - (void)loadAddressList;
  96. - (BOOL)uniqueAddress:(User*)newAddr inRow:(unsigned int*)row;
  97.  
  98. //***** file stuff
  99. - new:sender;
  100. - open:sender;
  101. - (BOOL)newOpenFilename;
  102. - openFile:sender;
  103. - saveAs:sender;
  104. - (BOOL)newSaveFilename;
  105. - save:sender;
  106.  
  107. //** menu methods
  108. - (void)createInfoZone;
  109. - showInfoPanel:sender;
  110. - showPreferences:sender;
  111. - showLogInput:sender;
  112. - showAddress:sender;
  113.  
  114. //** delegated methods
  115. - awakeFromNib;
  116. - appDidBecomeActive:sender;
  117. - appWillTerminate:sender;
  118. - textDidGetKeys:sender isEmpty:(BOOL)flag;
  119.  
  120. //** NXBrowser delegate methods
  121. - (int)browser:sender getNumRowsInColumn:(int)column;
  122. - browser:sender loadCell:cell atRow:(int)row inColumn:(int)column;
  123.  
  124. @end
  125.